Three dimensional (3D) content may need to be converted in order to be displayed on two dimensional (2D) screens. Rendering from either 2D to 3D or the other way around requires a rather heavy processing load. In addition, displaying dynamic information may require smooth update rates. This may include tasks as common to scrolling through a text window or as specific as updating the scenes in a racing simulation. Often a difficult choice exists between a consistent look and the fastest possible frame rate. This often results in the graphics processing unit (GPU) becoming the most expensive part of a system on a chip (SoC). In addition, high frame rate requirements can raise the power consumption reducing the battery life of portable electronics.
Currently available designs typically optimize in the GPU at the intraframe level to speed up performance. Optimizations include removing overdraw. For example, in a complicated scene many of the objects are occluded or hidden from view. When the process does not execute the fragment shader for these pixels, it can provide significant savings in computing resources and power. A fragment shader produces color and attributes of each fragment, in many cases the fragment consists of a pixel. The power and computing resources are reduced by not rendering the pixels that are occluded.
These intraframe processes do not generally take into account savings available in the time domain, or in an inter-frame manner.